﻿using System.Windows.Forms;
using CloudShot.Entities;

namespace CloudShot.Settings
{
  public sealed class CloudShotSettings
  {
    public string Version { get; set; }
    public bool IsStartWithComputer { get; set; }
    public bool IsOpenInBrowser { get; set; }
    public bool IsShowNotifications { get; set; }
    public bool IsSoundsEnabled { get; set; }
    public bool IsCaptureMouseInScreenshots { get; set; }
    public string ActiveStorageName { get; set; }
    public string LastSaveFileDir { get; set; }
    public Hotkey ShotHotkey { get; set; }
    public Hotkey InstantShotHotkey { get; set; }
    public Hotkey RecordHotkey { get; set; }
    public Hotkey FollowMouseHotkey { get; set; }
    public Hotkey StartPauseRecordingHotkey { get; set; }
    public Hotkey FinishRecordingHotkey { get; set; }
    public int RecordingTimeInSeconds { get; set; }
    public ShotType SystemTrayClick { get; set; }
    public bool IsHintsDisabled { get; set; }

    public CloudShotSettings()
    {
      IsCaptureMouseInScreenshots = false;
      IsSoundsEnabled = true;
      IsOpenInBrowser = true;
      IsShowNotifications = true;
      IsStartWithComputer = true;
      ShotHotkey = new Hotkey(Keys.PrintScreen);
      InstantShotHotkey = new Hotkey(Keys.PrintScreen, KeyModifiers.Shift);
      RecordHotkey = new Hotkey(Keys.PrintScreen, KeyModifiers.Ctrl);
      FollowMouseHotkey = new Hotkey(Keys.F9);
      StartPauseRecordingHotkey = new Hotkey(Keys.F10);
      FinishRecordingHotkey = new Hotkey(Keys.F11);
      RecordingTimeInSeconds = 10;
      SystemTrayClick = ShotType.ShotAndEdit;
      ActiveStorageName = "Dropbox";
    }
  }
}